Traditionally, application publishing involves installing and running a published application on a local machine. This may be performed by an administrator publishing packages that are subsequently downloaded and installed on administrator specified client machines. Depending on the application software, the hardware requirements for such a machine (the client) may be high. In addition, the installation itself may take significant amount of time, resources, and may even conflict with existing application installations.
In view of such conventional application publishing limitations, terminal services may be used in distributed computing environments to provide a thin client computing model to resources installed and executed in a corporate intranet. Using terminal services (TSs) allows a remote computing device (i.e., a client device that is outside of the intranet) to access an application installed on a corporate server, execute the application on the corporate server, and display the applications' user interface (UI) on the remote client. Since the application is executed on the corporate server, TSs allow the remote client to take advantage of corporate infrastructure resources independent of whether the remote client has appropriate hardware and software to execute the resources locally on the client device.
An administrative entity, to configure a corporate intranet for specific user, groups of users, and/or client device access to an application, typically must install the application and specify explicit application access policies and default/customized application behaviors. Since these corporate-end preparations are performed in advance of end-user access to the resources, these preparations generally do not negatively affect the final application use experience of the remote client user. Yet, even in view of such corporate-end preparations, the remote client user must still undertake substantially labor intensive and time consuming procedures to determine what applications have been authorized for user access, remotely access, and then execute the application(s) installed in a corporate intranet via TSs.
For instance, today a user must set up a Virtual Private Network (VPN) connection to the corporate network, start a remote client, enter the name of the remote computer and the user's credentials, then use TSs to connect to a desktop, and start applications from that desktop. To make matters worse, these end-user activities must be performed by the consumer each and every time that the user desires to remotely access the applications via TS services.
In view of these substantially labor intensive and time consuming procedures that the remote client user typically needs to undertake to identify available applications on a private network for subsequent remote TS execution, the remote client user cannot seamlessly identify available corporate resources for TS access.